#include <cppcms/view.h>  
#include <string>  

/**
 * This namespace defines the structures used for information exchange between
 * the controller and view.
 */

namespace content {
    struct master : public cppcms::base_content{
        
    };
    
    struct overview : public cppcms::base_content {
        int size;
        std::vector<std::string> ip;
        std::vector<std::string> comp_id;
        std::vector<std::string> service_id;
        std::vector<std::string> port;
        std::vector<std::string> remarks;
        std::vector<std::string> timestamp;
        std::vector<std::string> service;
        std::vector<std::string> status;
    };
    
    struct services : public cppcms::base_content {
        int size;
        std::vector<std::string> description;
        std::vector<std::string> id;
    };
    
    struct clients : public cppcms::base_content{
        int size;
        std::vector<int> id;
        std::vector<std::string> ip;
        std::vector<std::string> port;
        std::vector<std::string> remarks;
    };
    
    struct history : public cppcms::base_content{
        int size;
        std::string ip;
        std::string port;
        std::string remarks;
        std::string service;
        std::vector<std::string> timestamp;
        std::vector<std::string> status;
    };
    
}